/**
 * 初始化
 */
$(function() {
	// 初始化列表
	initMessageTable();
	// 查询
	$('#btnQuery').on('click', function() {
		sys.reloadTable('messageTable');
	});

	// 清空
	$('#btnClear').on('click', function() {
		$("#title").val("");
		$("#messageType").val("");
		$("#status").val("");
	});

	$('#btnAdd').on('click', function() {
		window.location.href = rootPath + '/message/toAddMessage';
		// sys.showRemote(rootPath + '/message/toAddMessage', function() {
		// var key = sys.dialog.getData("key");
		// if (key == '1') {
		// sys.showSuccess("添加成功！", sys.reloadTable('messageTable'));
		// } else if (key == '0') {
		// sys.showErr("添加失败！");
		// }
		// }, {
		// title : '新增消息管理',
		// width : 600,
		// height : 600
		// });
	});
});
/**
 * 初始化消息列表
 * 
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2017年11月22日 下午5:11:37
 */
function initMessageTable() {
	// 定义列
	var columns = [
			{
				field : 'no',
				title : '序号',
				align : 'center',
				valign : 'middle',
				width : '80px',
				formatter : function(value, row, index) {
					var options = $("#messageTable").bootstrapTable("getOptions");
					return options.pageSize * (options.pageNumber - 1) + index + 1;
				}
			},
			{
                title : '消息图片',
                align : 'center',
				valign : 'middle',
				width : '20%',
                formatter : function(value, row, index) {
                    var imgSrc = '';
                    if (null == row.imagePath || '' == row.imagePath || 'null' == row.imagePath) {
                        imgSrc = rootPath + "/statics/images/default.jpg";
                    } else {
                        imgSrc = SystemImgPath + row.imagePath;
                    }
                    return "<a rel='messageImg' href='" + imgSrc + "'>" +
                    		"<img src='" + imgSrc + "?x-oss-process=image/resize,m_mfit,h_100,w_200,color_d7d7d7' height='160px' onerror='this.src=\"" + rootPath + "/statics/images/default.jpg\"'>" +
                    		"</a>";
                }
            },
			{
				field : 'id',
				title : 'ID',
				align : 'center',
				valign : 'middle',
				visible : false
			},
			{
				field : 'title',
				title : '消息标题 / 创建修改信息',
				align : 'left',
				width : '20%',
				valign : 'middle',
				formatter : function(value, row, index) {
					var titleHtm = '消息标题：<b style="color:red;">' + value + '</b><br>';
					titleHtm += '创建人员：' + row.creater+ '<br>';
					titleHtm += '创建时间：' + formatDateTime(row.createTime, null, null)+ '<br>';
					titleHtm += '修改人员：' + row.modifier+ '<br>';
					titleHtm += '修改时间：' + formatDateTime(row.modifyTime, null, null)+ '<br>';
					if(row.receiveType == 1) {
						titleHtm += '接收类型：所有人';
					} else {
						titleHtm += '接收类型：指定人员';
					}
					return titleHtm;
				}
			},
			{
				field : 'messageType',
				title : '消息类型',
				align : 'center',
				valign : 'middle',
				formatter : function(value, row, index) {
					if (value == '1') {
						return "<span class='label label-danger'>系统通知</span>";
					} else if(value == '2') {
						return "<span class='label label-warning'>订单消息</span>";
					} else if(value == '3') {
						return "<span class='label label-success'>业界动态</span>";
					}
				}
			},
			{
				field : 'imagePath',
				title : '消息主图',
				align : 'center',
				valign : 'middle',
				visible : false
			},
			{
				field : 'receiveType',
				title : '接收方类型',
				align : 'center',
				valign : 'middle',
				visible : false

			// formatter : function(value, row, index) {
			// if (value == 1) {
			// return '所有用户'
			// } else {
			// return '指定用户'
			// }
			// }
			},
			{
				field : 'receiveId',
				title : '消息接收者',
				align : 'center',
				valign : 'middle',
				formatter : function(value, row, index) {
					if (row.receiveType == 1) {
						return '所有用户'
					} else {
						return value;
					}
				}
			},
			{
				field : 'sortNo',
				title : '排序',
				align : 'center',
				valign : 'middle',
				width : '15%',
				formatter : function(value, row, index) {
					return formatSort(value, row, index);
				}
			},
			{
				field : 'status',
				title : '状态',
				align : 'center',
				valign : 'middle',
				width : '80px',
				formatter : function(value, row, index) {
					if (value == '0') {
						return "<span class='label label-danger'>停用</span>";
					} else {
						return "<span class='label label-success'>启用</span>";
					}
				}
			},
			{
				field : '#',
				title : '操作',
				valign : 'middle',
				align : 'center',
				width : '15%',
				formatter : function(value, row, index) {
					var btnHtml = "<a class='btn btn-info btn-xs' href='javaScript:void(0);'onclick='toDetail(" + row.id + ")'>查看</a>";
					if (row.status == "0") {
						btnHtml += "<a class='btn btn-info btn-xs' href='javaScript:void(0);'onclick='updateStatus("
							+ row.id + ",1)'>启用</a>";
					} else if (row.status == "1") {
						btnHtml += "<a class='btn btn-danger btn-xs' href='javaScript:void(0);'onclick='updateStatus("
							+ row.id + ",0)'>停用</a>";
					}
					// 发给所有人的消息可以编辑
					if (row.receiveType == 1) {
						btnHtml += "<a class='btn btn-warning btn-xs' href='javaScript:void(0);'onclick='toEdit(" + row.id
						+ ")'>编辑</a>";
					} else {
						//给个人的消息不可编辑
					}
					
					return btnHtml;
				}
			} ];

	// 定义查询回调函数（查询参数在此设置）
	var queryParams = function(params) {

		var title = $("#title").val();
		var messageType = $("#messageType").val();
		var content = $("#content").val();
		var status = $("#status").val();

		return {
			rows : params.limit, // 页面大小
			page : params.pageNumber, // 页码
			title : title,
			messageType : messageType,
			status : status
		};
	};

	var url = rootPath + "/message/listMessagePage"; // 请求json数据的服务器地址
	sys.initTable('messageTable', {
		url : url,
		queryParams : queryParams,
		columns : columns,
		striped : true,
		clickToSelect : true,
		onLoadSuccess : function() {
            initFancyBoxImg("messageImg");
		}
	});
}
/**
 * 排序
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2017年11月23日 上午11:45:28
 * @param value
 * @param row
 * @param index
 * @returns {String}
 */
function formatSort(value, row, index) {
    var options = $('#messageTable').bootstrapTable("getOptions");
    var pageNumber = options.pageNumber;
    var lastRowIndex = $('#messageTable').bootstrapTable('getData').length;
    var strHtml = "";
    if (index != 0 || pageNumber != 1) {
        strHtml += "<a class='btn btn-primary btn-xs' onclick='sort( 1, " + row.id
                + ")'><i class='fa fa-arrow-up'></i>上移</a>";
    }
    if (lastRowIndex - 1 != index) {
        strHtml += "<a class='btn btn-primary btn-xs' onclick='sort( -1, " + row.id
                + ")'><i class='fa fa-arrow-down'></i>下移</a>";
    }
    if (index != 0 || pageNumber != 1) {
        strHtml += "<a class='btn btn-danger btn-xs' onclick='sort( 0, " + row.id + ")'>置顶</a>";
    }
    return strHtml;
}


/**
 * 排序
 * 
 * @param direction
 *            排序移动方向 1 上移 0 置顶 -1 下移
 * @param id
 *            主键ID
 */
function sort(direction, id) {
    var tableName = "eb_message";
    var url = rootPath + '/sort';
    $.ajax({
        type : 'POST',
        url : url,
        data : {
            direction : direction,
            tableName : tableName,
            id : id
        },
        success : function(data) {
            if (data.code == '1') {
                sys.reloadTable('messageTable');
            }
        }
    })
}

/**
 * 修改活动状态
 * @Description do-something
 * @author xu_cc
 * @date 创建时间：2017年10月11日 下午8:49:59
 * @param id
 * @param status
 */
function updateStatus(id, status) {
    showConfirm("确认修改消息状态吗？", function() {
        $.ajax({
            url : rootPath + "/message/updateStatus",
            type : "post",
            async : true,
            dataType : 'json',
            data : {
                id : id,
                status : status
            },
            success : function(json) {
                if (json.code == '1') {
                    showSuccess(json.msg, function() {
                        sys.reloadTable('messageTable');
                    });
                } else {
                    showErr(json.msg);
                }
            }
        });
    });
}

// 跳转编辑页面
function toDetail(id) {
	window.location.href = rootPath + "/message/toDetail?id=" + id;
}
// 跳转编辑页面
function toEdit(id) {
	window.location.href = rootPath + "/message/toUpdateMessage?id=" + id;
}